package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 设备应用更新日志对象 tb_device_app_logs
 * 
 * @author ruoyi
 * @date 2025-07-23
 */
@Data
@Schema(description = "设备应用更新日志对象")
public class TbDeviceAppLogs extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 自增主键 */
    @Schema(description = "自增主键")
    private Long id;


    /** 关联的设备sn(对应tb_device.dev_sn) */
    @Excel(name = "关联的设备sn(对应tb_device.dev_sn)")
    @Schema(description = "关联的设备sn(对应tb_device.dev_sn)")
    private String deviceSn;

    /** 关联的应用ID(对应tb_device_apps.id) */
    @Excel(name = "关联的应用ID(对应tb_device_apps.id)")
    @Schema(description = "关联的应用ID(对应tb_device_apps.id)")
    private Long appId;

    /** 应用包名 */
    @Excel(name = "应用包名")
    @Schema(description = "应用包名")
    private String packageName;

    /** 版本号 */
    @Excel(name = "版本号")
    @Schema(description = "版本号")
    private String packageVersioncode;

    /** 版本编号 */
    @Excel(name = "版本编号")
    @Schema(description = "版本编号")
    private String packageVersionnumber;

    /** 更新内容详情 */
    @Excel(name = "更新内容详情")
    @Schema(description = "更新内容详情")
    private String packageContent;

    /** 更新结果(0=失败 1=成功) */
    @Schema(description = "更新结果(0=失败 1=成功)")
    @Excel(name = "更新结果(0=失败 1=成功)")
    private Integer packageStatus;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "更新时间")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date installDate;

    /** 安装方式(1=OTA 2=本地 3=手动) */
    @Excel(name = "安装方式(1=OTA 2=本地 3=手动)")
    @Schema(description = "安装方式(1=OTA 2=本地 3=手动)")
    private Integer installMethod;

    /** 错误信息(失败时记录) */
    @Excel(name = "错误信息(失败时记录)")
    @Schema(description = "错误信息(失败时记录)")
    private String errorMessage;


}
